package com.zhj.process.service;

import java.util.List;

/**
 * 公共方法接口
 *
 * @param <REQ> 请求体
 * @param <DTO> 相应参数
 */
public interface IService<REQ, DTO> {

    /**
     * get TModel info
     *
     * @param id id
     * @return TModelDTO.java by id
     * @since 1.0.0
     */
    DTO getById(Long id);

    /**
     * 获取到所有数据
     *
     * @return the all
     * @since 1.0.0
     */
    List<DTO> getAll();

    /**
     * Save TModel
     *
     * @param req req
     * @return the boolean
     * @since 1.0.0
     */
    boolean save(REQ req);

    /**
     * Update TModel
     *
     * @param req req
     * @return the boolean
     * @since 1.0.0
     */
    boolean updateById(REQ req);

    /**
     * Delete TModel by id
     *
     * @param id id
     * @return the boolean
     * @since 1.0.0
     */
    boolean deleteById(Long id);


}
